#include <stdio.h>
void find_singles(int* arr, int sz)
{
    int ret = 0;
    int single1 = 0;
    int single2 = 0;
    for(int i = 0; i < sz; i++)
    {
        ret ^= arr[i];
    }
    for(int i = 0; i < 32; i++)
    {
        if(((arr[i]>>i) & 1) == 1)
        {
            for(int j = 0; j < sz; j++)
            {
                if(((arr[j]>>i) & 1) == 1)
                {
                    single1 ^= arr[j];
                }
                else
                {
                single2 ^= arr[j];
                }
            }
            printf("%d\n", single1);
            printf("%d\n", single2);
            break;
        }
    }
}
int main()
{
    int arr[] = {1,1,2,2,3,4,3,5};
    int sz = sizeof(arr)/sizeof(arr[0]);
    find_singles(arr, sz);
    return 0;
}